package com.itheima.mapper;

import com.itheima.pojo.User;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;

import java.util.List;

// 这个接口中的方法都是用来操作user表
public interface UserMapper {
    // 查询所有用户
    @Select("SELECT * FROM user;")
    List<User> findAllUsers();

    // 根据用户id删除用户
    @Delete("DELETE FROM user WHERE id=#{uid};")
    int deleteById(int uid);

    // 根据用户id修改用户 参数是自定义类: #{成员变量名}, 取出成员变量值
    @Update("UPDATE user SET username=#{username}, birthday=#{birthday}, sex=#{sex}, address=#{address} WHERE id=#{id};")
    void update(User user);

    // 添加用户
    @Insert("INSERT INTO user VALUES (NULL, #{username}, #{birthday}, #{sex}, #{address});")
    void add(User user);
}
